home *** CD-ROM | disk | FTP | other *** search
/ Suzy B Software 2 / Suzy B Software CD-ROM 2 (1994).iso / prntutil / printspc / printspc.doc < prev    next >
Text File  |  1995-04-25  |  7KB  |  152 lines

  1.                    PrintSpec
  2.  
  3.            Freeware Spectrum Picture Printer
  4.                for the Okimate 20 Printer
  5.  
  6.                  By Greg Wageman
  7.  
  8. The Spectrum picture format opened up new possibilities for the Atari ST
  9. computer.  By freeing us from the limitation of only 16 colors, Spectrum
  10. made images on the ST look like they had never looked before.  Unfortunately,
  11. we can't take our computers and color monitors everywhere we go.  If
  12. you're like me, you'd been looking for a way to capture all those
  13. colors on hardcopy.
  14.  
  15. Being a programmer, and impatient, I took matters into my own hands and
  16. wrote PrintSpec.
  17.  
  18. PrintSpec uses the same halftoning techniques used by magazines and
  19. newspapers to print black-and-white and full-color pictures on your
  20. Okimate 20 printer.  Spectrum pictures may be rendered in full color using
  21. a color ribbon, or in greyscale using a black ribbon.  Pictures may be
  22. printed in two different sizes: 4 by 6 inches, which can be printed
  23. two-to-a-page, and 7 by 9 inches, which fills nearly an entire 8.5 by 11
  24. inch sheet.
  25.  
  26.  
  27.  
  28.             HOW TO USE PRINTSPEC
  29.  
  30. Double-click on printspc.prg to start the program.  When PrintSpec has
  31. finished loading, you will be presented with a title box.  Press return
  32. or click on the button to continue.  The title box is only shown once, no
  33. matter how many pictures you print.  After dismissing the title box, you
  34. will be shown the main dialog box.  The dialog allows you to set the
  35. ribbon color, the picture size and the printer port from within PrintSpec.
  36.  
  37. PrintSpec reads your system's printer configuration to determine if you
  38. have a color or black ribbon loaded, and which port the printer is
  39. connected to.  It uses this information to determine the defaults.  If
  40. you change the ribbon color or printer port within PrintSpec, however,
  41. the system configuration is NOT updated.
  42.  
  43. When you have configured PrintSpec for the type of picture you wish to
  44. print, click on "Continue" to exit the dialog.  You will then be presented
  45. with a file selector box.  Select the Spectrum picture you wish to print,
  46. either compressed or uncompressed.  There will be a pause while PrintSpec
  47. reads the picture from the disk (and uncompresses it, if necessary).
  48.  
  49. Now that the picture has been loaded into memory, PrintSpec displays a
  50. bar graph that indicates the relative portions of printed and unprinted
  51. picture.  The bar is updated after PrintSpec has sent the data for each
  52. complete print line.
  53.  
  54. PrintSpec translates the Spectrum picture into matrices of dots, then
  55. into characters, and then sends the appropriate codes to the printer.
  56. PrintSpec drives the Okimate in its 24-pin mode, so it takes a considerable
  57. number of bytes to generate one pass of the printhead.  Even so, PrintSpec
  58. drives your printer faster than the printer will accept data (but only
  59. slightly faster).
  60.  
  61. You may abort a printout once it's begun by pressing the "Undo" key.  If
  62. you are printing in color, printing will stop after the current line has
  63. printed in all three colors.  Buffering in the printer may cause it to
  64. print more than one line after you press "Undo", however, particularly
  65. when printing in black-and-white.
  66.  
  67. When printing completes, and after an abort, the configuration dialogue box
  68. reappears.  Clicking on "Quit" will terminate the program and return you to
  69. the desktop.
  70.  
  71.  
  72.             CONSERVATION OF RIBBON
  73.  
  74. The Okimate 20's firmware causes the printhead to make a full pass across
  75. the page when printing in color, even if the image does not take up the
  76. entire page width.  The printhead must do this in order to advance the ribbon
  77. to the next color.  Consequently, there is no way to reduce ribbon consumption
  78. during color printing.  During black-and-white printing, however, the
  79. printhead only loads and advances the ribbon when actually printing, and
  80. prints only to the rightmost edge of the image.  A 4-by-6 black and white
  81. picture will therefore use the least amount of ribbon.
  82.  
  83.  
  84.             OF RESOLUTIONS AND PIXELS
  85.  
  86. The Atari ST displays 320 pixels horizontally in an eight-inch area of the
  87. SC1224 monitor.  This is a horizontal resolution of 40 pixels per inch.  In
  88. the vertical direction, the ST displays 200 pixels in a six-inch area.  This
  89. is a vertical resolution of 33.33 pixels per inch.  The ratio of horizontal
  90. resolution to vertical is therefore 40/33.33, or about 1.2 to 1.
  91.  
  92. The Okimate 20 has a maximum resolution of 160 dots per inch horizontally,
  93. and 144 dots per inch vertically.  This is a ratio of 1.11 to 1, which doesn't
  94. quite match the Atari screen's.  However, the amount of distortion introduced
  95. is not objectionable, so this high-resolution mode is exploited in the 4-by-6
  96. inch mode of PrintSpec.  A 3-by-3 halftoning matrix is used to render each
  97. pixel of the image, resulting in 960 dots horizontally (not including the
  98. left margin) and 600 dots vertically.
  99.  
  100. A 3-by-3 halftoning matrix provides 10 intensities.  All ten are not needed
  101. in color (since a Spectrum image only provides 8 intensities each for Red, Green
  102. and Blue), so only eight are used per color, to reproduce the entire Spectrum
  103. palette.  The RGB values of the image are converted to the Cyan, Magenta and
  104. Yellow values of the Okimate for color printing.  When printing in black, the
  105. RGB values of the Atari are converted to a luminance (brightness) value, and
  106. all 10 possible intensity values are used to approximate the color image.
  107.  
  108. The Okimate 20 can also display 120 dots per inch horizontally at 144 dots
  109. per inch vertically.  This results in an exact 1.2 to 1 ratio when the
  110. picture is rotated 90 degrees.  This mode is used to print the 7-by-9 inch
  111. pictures.  A 4-by-4 halftoning matrix is used to render each pixel, resulting
  112. in 1280 dots vertically and 800 dots horizontally (again, not including
  113. the left margin).
  114.  
  115. A 4-by-4 halftoning matrix provides 17 intensities.  In color, only a select
  116. 8 intensities are used.  All 17 intensities are used when printing 7 by 9
  117. format pictures in black, resulting in a surprisingly faithful halftoned image.
  118.  
  119.  
  120.                 FREEWARE
  121.  
  122. This program is Freeware.  I have released it to the Atari ST community
  123. in the hope that it will prove useful to other Okimate owners.  If you have
  124. questions or comments I can be reached by electronic mail as:
  125.  
  126.             74016,352 on Compuserve;
  127.             cemax!greg@sj.ate.slb.com on the Internet.
  128.  
  129. You are hereby granted permission to give a copy of this program to anyone
  130. whom you feel may benefit from its use, provided that you don't alter the
  131. program or the resource file, and provided this documentation accompanies
  132. any and all copies you distribute.  All other rights remain with the author.
  133.  
  134.  
  135.             CREDIT WHERE CREDIT IS DUE
  136.  
  137.  
  138. This program was written in the C Programming Language.  It was compiled
  139. with Mark Williams C, version 3.0.6.  The Resource file was constructed
  140. using the excellent Mark Williams ReSource editor.
  141.  
  142. Documentation on the Spectrum file format was obtained via Compuserve,
  143. courtesy of Boris Tsikanovsky.
  144.  
  145. Information on halftoning and RGB to CMY conversion was obtained from
  146. "Fundamentals of Interactive Computer Graphics", by Foley and Van Dam,
  147. first edition.
  148.  
  149. Information on programming the Okimate 20 for color printing was discovered
  150. by the author through experiment, and by reading between the lines of the
  151. woefully inadequate and error-ridden Okimate 20 printer manual.
  152.